﻿@inherits LayoutComponentBase
@inject ISecureCache SecureCache
@inject AuthenticationStateProvider AuthenticationStateProvider

<RadzenDialog/>
<RadzenNotification/>
<RadzenTooltip/>
<RadzenContextMenu/>

<AuthorizeView>
    <Authorized>
        <RadzenLayout style="grid-template-areas: 'rz-sidebar rz-header' 'rz-sidebar rz-body';">
            <RadzenHeader>
                <RadzenRow JustifyContent="JustifyContent.Start" AlignItems="AlignItems.Center" Gap="0">
                    <RadzenColumn Size="5">
                        <RadzenSidebarToggle Click="@SidebarToggleClick"></RadzenSidebarToggle>
                    </RadzenColumn>
                    <RadzenColumn Size="7">
                        <RadzenStack AlignItems="AlignItems.Center" Orientation="Orientation.Horizontal" JustifyContent="JustifyContent.End">
                            <RadzenProfileMenu Visible="@context.User.Identity.IsAuthenticated" Click="@ProfileMenuClick">
                                <ChildContent>
                                    <RadzenProfileMenuItem Path="profile" Icon="settings" Text="Profile"/>
                                    <RadzenProfileMenuItem Text="Logout" Value="Logout" Icon="power_settings_new"/>
                                </ChildContent>
                                <Template>
                                    @context.User?.Identity.Name
                                    <RadzenGravatar Email="@context.User?.Identity.Name"/>
                                </Template>
                            </RadzenProfileMenu>
                        </RadzenStack>
                    </RadzenColumn>
                </RadzenRow>
            </RadzenHeader>
            <RadzenBody Expanded="@sidebarExpanded">
                <RadzenRow class="rz-mx-auto rz-px-4 rz-pt-2 rz-pt-md-4 rz-pt-lg-6 rz-pt-xl-12 rz-pb-2 rz-pb-lg-12" Style="max-width: 1440px;height:100%;">
                    <RadzenColumn Size="12">
                        @Body
                        <RadzenStack AlignItems="AlignItems.Center" Gap="0" class="rz-py-4 rz-py-lg-6" Style="padding: var(--rz-panel-menu-item-padding);">
                            <RadzenText Text="CRMBlazorWasmRBS v1.0.0" TextStyle="TextStyle.Caption" style="color: var(--rz-text-disabled-color);" TagName="TagName.P" TextAlign="TextAlign.Center"/>
                            <RadzenText Text="Copyright Ⓒ 2023" TextStyle="TextStyle.Caption" class="rz-mb-0" style="color: var(--rz-text-disabled-color);" TagName="TagName.P" TextAlign="TextAlign.Center"/>
                        </RadzenStack>
                    </RadzenColumn>
                </RadzenRow>
            </RadzenBody>
            <RadzenSidebar Expanded="@sidebarExpanded" style="z-index: 2">
                <SideMenu></SideMenu>
            </RadzenSidebar>
        </RadzenLayout>
    </Authorized>
    <NotAuthorized>
        <RedirectToLogin></RedirectToLogin>
    </NotAuthorized>
</AuthorizeView>